export interface SubjectContrastVO {
  /**
   * 主键id
   */
  id: string | number;

  /**
   * 对照月份
   */
  contrastDate: string;

  /**
   * 预算科目编码
   */
  subjectCode: string;

  /**
   * 预算科目名称
   */
  subjectName: string;

  /**
   * 会计科目编码
   */
  accountSubjectCode: string;

  /**
   * 会计科目名称
   */
  accountSubjectName: string;

}

export interface SubjectContrastForm extends BaseEntity {
  /**
   * 主键id
   */
  id?: string | number;

  /**
   * 对照月份
   */
  contrastDate?: string;

  /**
   * 预算科目编码
   */
  subjectCode?: string;

  /**
   * 预算科目名称
   */
  subjectName?: string;

  /**
   * 会计科目编码
   */
  accountSubjectCode?: string;

  /**
   * 会计科目名称
   */
  accountSubjectName?: string;

}

export interface SubjectContrastQuery {

  /**
   * 对照月份
   */
  contrastDate?: string;

  /**
   * 预算科目编码
   */
  subjectCode?: string;
}


/**
 * 预算科目树结构
 */
export interface SubjectListTreeVO {

  id: number;

  subjectName: string;

  subjectCode: string;

  level: number;

  children: SubjectListTreeVO[];

}

export interface AccountListPageVO {

  /**
   * 会计科目编码
   */
  accountSubjectCode?: string;

  /**
   * 会计科目名称
   */
  accountSubjectName?: string;

  /**
   * 创建时间
   */
  createTime?: string;
}


export interface AccountListPageDTO extends PageQuery {

  /**
   * 对照月份
   */
  contrastDate: string;
  /**
   * 预算科目编码
   */
  subjectCode: string;
  /**
   * 会计科目编码
   */
  accountSubjectCode?: string;
  /**
   * 会计科目名称
   */
  accountSubjectName?: string;
}


export interface SubjectContrastAddDTO {

  /**
   * 对照月份
   */
  contrastDate: string;

  /**
   * 预算科目编码
   */
  subjectCode: string;

  /**
   * 预算科目名称
   */
  subjectName: string;
  /**
   * 会计科目列标
   */
  list: AccountListPageVO[];

}

export class AccountListDTO {

  /**
   * 会计科目编码
   */
  accountSubjectCode?: string;

  /**
   * 会计科目名称
   */
  accountSubjectName?: string;


  constructor(accountSubjectCode?: string, accountSubjectName?: string) {
    this.accountSubjectCode = accountSubjectCode;
    this.accountSubjectName = accountSubjectName;
  }
}
